package SPH;

import java.util.List;

public class SPHParticle {
	private float mass; 
	private float viscosity;
	private float density;
	private float pressure;
	private List<Integer> neighbourIndexes;
	public Vector3D positionVector;
	public Vector3D velocityVector;
	private Vector3D velocityEvaluationVector;
	private Vector3D velocityForceVector;
	private Vector3D gravityForceVector;
	private Vector3D pressureForceVector;
	private Vector3D normalVector;
	
	public Vector3D getPosition(){
		return positionVector;
	}
	
	public Vector3D getNormal()	{
		return normalVector;
	}
	
	public void setPosition(float x, float y, float z){
		positionVector.x = x;
		positionVector.y = y;
		positionVector.z = z;
	}
	
	public void setPosistion(Vector3D position){
		positionVector = position;
	}
	
	public float gtDensety(){
		return density;
	}
	
	public List<Integer> getNeighbourIndexes(){
		return neighbourIndexes;
	}
	/**Constructor
	 * @param x
	 * @param y
	 * @param z
	 * @param particleMass
	 */
	public SPHParticle(float x, float y, float z, float particleMass){
		positionVector = new Vector3D(x,y,z);
		velocityVector = new Vector3D();
		mass = particleMass;
	}
	public SPHParticle(Vector3D position, Vector3D velocity, float particleMass){
		positionVector = position;
		velocityVector = velocity;
		mass = particleMass;
	}
}
